GPTの解説記事を読んだ上での個人的補足とChatGPTの手軽な利用例について触れてみた
ChatGPTに使われているGPTの考察についての記事が先日上がり、なんとなく使っていた身としては「なるほど」の一言が沢山繰り返されました。
読み手として理解したことは以下の通り。
- ChatGPTはトークン(単語)数が動作の制約にある
- トークン最大長を超過した場合は過去に投げた文字列から順番に処理の対象外となる
- リマインドするとしても候補がどこからどこまでかは明示されない
何でもかんでも通して解釈してくれるわけではない、ということが分かったのは大きいところでした。
そして昨日、上記記事の続編が出ました。正直出ないものだと思っていたので安心しました。
とても長い記事です。そしてこれが3回に渡って掲載されるとあります。ざっくりと読んだ上で気になった補足と、最後に個人的な利用スタイルについて書いてみました。
記事中の補足
幾つか見当たった点で挙げておきます。
Attention Is All You Need
Transformerの原典「Attention Is All You Need」は以下の通り。
読むのが辛いと思った方には次の解説記事をおすすめします。
zero/few-shot
GPTが注目される理由1:zero/few-shot プロンプトによる利便性の段落で触れられているZero/Few-Shot、個人的には「知らんがな」という感想でしたが後日詳細に触れられるようです。ただ、概要を把握する分では今回公開された記事(GPTの仕組みと限界についての考察(2.1))内の記載でも問題なさそうです。
念の為詳細の解説は既に出ていないかなと検索したところ、GPT3ベースでの内容となりますがありました。
トークンの切り出し方
GPTにおける日本語と英語の違い:トークンの切り出し方の段落。
英語では単語(句読点やクオートなどの記号)単位でトークンが切り出されますが、日本語の場合は文字単位になります。特に漢字は2トークンとしてカウントされるようです。
ChatGPTを扱う際にDeepLで英訳した上で利用する例は多々あるのですが、これが一番の原因でしょう。
3つのカスタマイズレベル
GPT(やLLM)における3つのカスタマイズレベルの段落。
プロンプトエンジニアリングが流行っていたのは、正直なところバズ先行の一過性だと思っていました。ですが、GPT(やLLM)における3つのカスタマイズレベルの段落を読むとレベル1として扱われています。プロセスとしての成り行きはずれてないということですね。
あとがき
色々と試した末に、最近はChatGPTを検索の選択肢として使っています。学習した概要と抑えておきたいURLについてもシンプルに列挙してくれるのでとても楽ちんです(全部のURLが正しいかは怪しいのですが)。思考を捨てていないかと思われそうですが、結局Googleで検索して順次辿る項目でもあるのでそう変わりません。
個人的には直接コード出力を依頼することはほぼありません。ただ、実現に至るためのプロセスにどんな手段があるか、までは質問したりします。せっかくのコードを考えるという楽しいフェーズを自ら捨てたくないというだけです。
今回紹介した記事の続編が出たら、追々読み込んだ上でまた書いてみようと思います。